The invention relates to printers and computer networks. More particularly, the invention relates to selection of print features.
Personal computers, networks, and printers are known in the art. A personal computer user wanting to print a document is presented with a dialog of various options available for the selected printer. A simple example is the number of copies to print. In fact, unknown to the user, many printer specific capabilities are presented in the process of generating a document to printer. For example, the user typically can only select paper sizes supported by the currently selected (often called default) printer. To pick a different paper size, the user typically has to first pick a different printer.
Presenting the user only with options supported by the selected printer has several disadvantages. First the user tends to be task oriented, thus wants to specify the task and have the system perform it. By forcing the user to understand the capabilities of each printer, so the user knows which one to select, is awkward for the user. For example, selecting DesignJet 650C before the user can select D size paper is not obvious. Second, the system can""t add much value, like using a faster printer if the user""s job is long. Finally, the system isn""t learning about the user""s preferences. The system is simply doing exactly what it is told. If the user described the task, and then corrected the system when the system guessed wrong, the system could remember the user""s preference.
Attention is directed to a product called JetAdmin (TM). JetAdmin is a product available from the assignee of the present invention that enumerates all printers on a network.
Attention is also directed to a product called Novell Distributed Print Services (TM). Novell Distributed Print Services is software available from Novell that makes it easier for users to find a printer and to print from their workstations in large enterprise network environments. A user can view printers on the network, see each printer""s job status, and send an urgent printing job to the printer with the smallest workload. Novell Distributed Print Services also enable users to choose customized printer configurations from their workstations to, for example, specify that a notification is desired if a printer is busy, a paper tray is empty, or a print job is finished.
These products fail to solve the problems identified above.
The invention provides a computer readable media for use with a computer, the computer readable media bearing software configured to present to a user of the computer an interface with which the user can select from a superset of print features provided by multiple printers; receive from the user data indicating print features selected by the user; and suggest a printer to the user based on print features selected by the user.
In one aspect of the invention, a method of configuring a computer for printing comprises presenting to a user an interface with which the user can select from a superset of print features provided by multiple printers; receiving from the user data indicating print features selected by the user; and suggesting a printer to the user based on print features selected by the user.
In another aspect of the invention, a computer configured for use in a network including multiple printers, some of which are commonly used by a user of the computer and contained in a list of printers stored in the computer, comprises software configured to:
(a) combine description files of printers to define a superset of print features provided by multiple printers on the network;
(b) present to a user an interface with which the user can select from the defined superset of print features provided by multiple printers on the network;
(c) receive from the user data indicating print features selected by the user;
(d) determine if there is any printer commonly used by the user capable of all of the print features selected by the user and, if so, proceed to step (f); and, if not, proceed to step (e);
(e) determine if there is any printer elsewhere in the network capable of all of the print features selected by the user and, if so, proceed to step (f) and, if not, providing a message so indicating to the user;
(f) suggest printers to the user capable of all the print features selected by the user;
(g) receive a selection of a printer from the user; and
(h) send a print job for printing on the selected printer.
The set of printers the user typically uses can be called the commonly-used printers. The user is able to create a document and select printing features for the document based on any features supported by at least one of the commonly-used printers.
Specifically, in one embodiment, the set of description files characterizing the commonly-used printers are combined to create a new description file that contains a superset of capabilities supported by the commonly-used printers. There are several common formats for describing a printer""s capabilities in a file. Adobe""s Printer Description file (PPD) and Microsoft""s Generic Printer Description file (GPD) are two examples. Other alternatives are possible.
For example, in one alternative embodiment, one or more of the printers are able to describe their features, and are interrogated directly if they can describe their features. More particularly, some printers have on-board MIBs (Management Information Base), one of which is a standard printer MIB, and the printer MIB is interrogated to determine the features of the printer using an appropriate protocol, such as SNMP (Simple Network Management Protocol).
In another alternative embodiment, information about a printer""s features is obtained from a manufacturer""s web site.
In addition, constraints can be included to keep the user from selecting features that are not possible. For example, if the user has a monochrome duplex printer and a color printer that only prints simplex, then the constraints would not allow the user to select automatic duplexing of a color document.
In an alternative embodiment, the approach to solving constraints is to check other printers the customer may find acceptable to use that supports the requested feature. In a large enterprise there may be a printer that meets the user""s needs, but the user is unaware of the device and/or its capabilities. In this embodiment, the system adds the printer to the user""s list of commonly used printers. This can occur, e.g., after prompting the user to determine if the user wants to add the printer to the user""s list of commonly used printers.
Other features and advantages of the invention will become apparent to those of ordinary skill in the art upon review of the following detailed description, claims, and drawings.